1. Field of the Invention
The present invention relates to a numerical controller for controlling a machine tool, and in particular relates to a numerical controller for controlling a multi-axis machine tool for machining a workpiece (object to be machined) attached to a table using a mechanism including at least three linear axes and at least three rotating axes for rotating the table or a tool head.
2. Description of the Related Art
Five-axis machine tools having three linear axes (X, Y, and Z axes) and two rotating axes are becoming common. These five-axis machine tools are classified into three types: a head rotating type having two rotating axes on the tool head side, a table rotating type having two rotating axes on the table side, and a mixed type having one rotating axis on the tool head side and one rotating axis on the table side. Japanese Patent Application Laid-Open No. 2003-195917, (corresponding to United States Patent Application Publication No. US2003/0120376 A1) discloses a technique for machining a workpiece by controlling a tool center point, wherein the tool center point is instructed with the positions of linear axes on a command program coordinate system and a direction of a tool relative to a workpiece is instructed by a tool direction command.
In this five-axis machine tool, however, there is at least one singular point at which rotating axes largely move. To handle this problem, U.S. Pat. No. 7,571,027, for example, proposes a method for avoiding large movements of rotating axes by determining whether or not the tool direction of a five-axis kinematic assembly is close to a singular point and generating a virtual axis near the singular point if determined that the tool direction is close to a singular point. It appears, however, that the method disclosed in that U.S. Pat. No. 7,571,027 has the following problems:
(1) Although a virtual axis is generated to determine the amount of movement, the virtual axis, which does not actually exist, does not actually move. It is predicted, therefore, that an error would occur at the machining point although the large movements of the rotating axes could be avoided.
(2) Because it is determined whether or not the tool direction is close to a singular point, there may occur a case in which the tool direction is determined to be close to a singular point on one of the substantially identical paths but the tool direction may be determined not to be close to a singular point on the other path. In this case, the tool would move very differently even on the substantially identical machining paths. Consequently, grooves or differences in level may be formed on the machined surface.
Recently, a tool head for head rotating type multi-axis machine tools having three rotating axes as shown in FIGS. 1 and 2 is used. In addition, mixed type multi-axis machine tools having two table rotating axes and one head rotating axis as shown in FIG. 3 are also used. Mixed type multi-axis machine tools having one table rotating axis and two head rotating axes as shown in FIG. 4 and table rotating type multi-axis machine tools having three table rotating axes as shown in FIG. 5 are also contemplated as machine structures. There has been no technique, however, for numerically controlling the tool center point for such machine tools of multi-axis configuration.